Набројиви тип
Поред већ наведених уграђених типова података, могуће је дефинисати и
нове типове података. У језику C++
можемо дефинисати набројиве типове података, са
коначно много вредности. За то се користи кључна реч enum.
На пример, наредном конструкцијом бисмо дефинисали тип који има
вредности дана у недељи.
enum DanUNedelji {PON, UTO, SRE, CET, PET, SUB, NED};Променљиве овог типа даље декларишемо на уобичајени начин (нпр.
DanUNedelji dan;). На вредности набројивог типа реферишемо
тако што наведемо саму вредност тог типа. На пример,
SRE. Исти ефекат би се могао постићи и
дефинисањем нумеричких константи (нпр. 1 за понедељак, 2 за уторак
итд.). Ако би се у програму користиле константне вредности, програм би
био мање разумљив (јер се лакше разуме шта значи вредност
SRE, него константна вредност 3). То се може решити
именованим константама, међутим, остаје проблем да се променљивима типа
int могу доделити и вредности које нису исправне (нпр.
вредност 8 не означава ни један дан), док код набројивог типа тако нешто
није могуће.
Набројиви тип
Поред већ наведених уграђених типова података, могуће је дефинисати и
нове типове података. У језику C#
можемо дефинисати набројиве типове података, са коначно много вредности.
За то се користи кључна реч enum. На пример, наредном
конструкцијом бисмо дефинисали тип који има вредности дана у недељи.
enum DanUNedelji {PON, UTO, SRE, CET, PET, SUB, NED};Променљиве овог типа даље декларишемо на уобичајени начин (нпр.
DanUNedelji dan;). На вредности набројивог типа реферишемо
тако што наведемо име типа и његову вредност
раздвојене тачком. На пример, DanUNedelji.SRE.
Исти ефекат би се могао постићи и дефинисањем
нумеричких константи (нпр. 1 за понедељак, 2 за уторак итд.). Ако би се
у програму користиле константне вредности, програм би био мање разумљив
(јер се лакше разуме шта значи вредност SRE, него
константна вредност 3). То се може решити именованим константама,
међутим, остаје проблем да се променљивима типа int могу
доделити и вредности које нису исправне (нпр. вредност 8 не означава ни
један дан), док код набројивог типа тако нешто није могуће.